Mass storage devices may include any device capable of storing computer files such as hard disk drives, compact disk read-only memory (CD-ROM) drives, read/write compact disk, drives, digital tape drives, and the like. The storage capacity of mass storage devices continues to increase. For example, in the 1980's, the storage capacity of hard disk drives were commonly available at anywhere from five megabytes to one-hundred megabytes. Recently, the storage capacity of hard disk drives has dramatically increased to the multiple gigabyte range with plans to continue this dramatic increase in storage capacity. The demand for increased storage capacity has been driven by such factors as larger software applications, such as multimedia-related applications, larger databases, and an increase in computer networks. As a result, mass storage devices often contain gigabytes of information spread across thousands of files in thousands of directories and sub-directories.
The popularity and number of computer networks, such as local area networks (LANs) and wide area networks (WANS), has also dramatically increased. Computer networks typically use a large hard disk drive or a plurality of large hard disk drives to provide storage capacity to the users or clients of a network. Computer networks also commonly employ multiple CD-ROM drives that provide additional amounts of information in the gigabyte range. Consequently, network managers or system administrators have the increased burden of managing gigabytes of information spread across multiple storage devices that often includes thousands of files in thousands of directories and sub-directories.
The dramatic increase in storage capacity and computer networks has created a file management problem. The large storage capacity and associated large amount of information has made file management of computer systems, such as the personal computer and computer networks, more difficult. These difficulties arise from the fact that the number of files stored on a single hard disk drive may be in the hundreds-of-thousands and the number of directories may be in the thousands. This makes it difficult to conveniently and quickly locate a desired set of files and to delete selected files as needed. It is also difficult to determine the effect of a particular act, such as deleting a particular set of files, before actually deleting the files. For example, it is often desirable to know the amount of storage capacity that will be made available as a result of deleting a set of files spread over multiple sub-directories and, sometimes, different storage devices. Unfortunately, the dramatic increase in storage capacity has not been met with an equally dramatic increase in the functionality of computer programs to manage these large mass storage devices.
Normally, computer files related to the same subject matter, such as a project or application program, are organized and stored in a mass storage device using a directory structure or a directory-tree format with a root directory and a plurality of sub-directories arranged at levels below the root directory. Often, for a variety of reasons, it becomes necessary to delete some or all of the files related to a common subject matter to free up additional storage capacity. For example, this may become necessary when a project has ended and the files will no longer be used or after transferring files related to a common subject matter to another machine. This may also be necessary when licensing restrictions require that copies of licensed software be removed at the expiration of a license. Furthermore, this may be necessary when deleting large, unused driver files and other unneeded files that are automatically installed with many application programs. Application programs commonly generate temporary files that are generally unneeded after a short period of time and which must later be located and deleted to free up additional storage capacity.
Existing computer utilities and programs, such as the MICROSOFT MS-DOS "DIR" and "DEL" commands provide only limited capability to accomplish these functions. These utilities are especially limited and cumbersome to use when performing operations across multiple directories and sub-directories. Furthermore, some of these utilities provide inaccurate file total information and do not differentiate between file name entries and sub-directory entries when providing directory information.